MuleSoft Accelerator for Consumer Goods
Use case 5 - Customer Planning and Forecasting
Improve your customer planning and forecasting with intelligent, data-driven insights. Utilize pre-built assets that surface relevant product, customer, volume planning from backend systems. Easily consolidate this valuable data into platforms like Salesforce Consumer Goods Cloud for informed planning and forecasting.
Overview
Description
Integrating customer planning and forecasting poses significant challenges, including data inconsistency, silos, and security concerns. The complexity of integrating diverse systems and ensuring real-time updates, along with compatibility issues and change management, adds to the difficulty. Scalability and cost considerations also play a role. Effective communication and collaboration between teams are crucial for successful integration. Organizations must prioritize data quality, security, and modern integration tools to overcome these challenges and achieve accurate and informed customer planning and forecasting processes.
MuleSoft can help solve these integration challenges in customer planning and forecasting by offering a unified integration platform that connects various systems and data sources seamlessly.
By leveraging this solution, organizations can attain data consistency and real-time updates for accounts and product information, eliminating data silos and fostering productive collaboration. With its inherent security features and strong data governance, MuleSoft ensures data protection and compliance. Furthermore, by facilitating seamless communication and teamwork among teams, MuleSoft empowers organizations to surmount integration complexities, optimize workflows, and gain precise insights for effective customer planning and forecasting.
Goals
- Support the bulk creation and real-time creation of products in Salesforce Consumer Goods Cloud.
- Support the creation of Universal ID & ID attribution
- Orchestrate product updates across designated applications
- Support product hierarchies of a product with attributes - (example: Category, Sub-Category, Brand, Flavor, Packaging.) These attributes can be modified based on customer requirements.
- Create and update Product Hierarchy object in Salesforce Consumer Goods Cloud
- Support the bulk creation and real-time creation of accounts in Salesforce Consumer Goods Cloud.
- Orchestrate accounts updates across designated applications
- Support account hierarchies of an account with attributes -ParentId
- Create and update Account Hierarchy object in Salesforce Consumer Goods Cloud
- Support integration of volume planning data into Salesforce Consumer Goods Cloud
Use case considerations
- Consumer Goods products from SAP S/4 HANA are synchronised with Salesforce Consumer Goods Cloud.
- Creation of new products
- Updating existing products
- Creation of product hierarchies
- Updating product hierarchies
- Deleting product(s)
- This will be handled by marking products as โInactiveโ (productStatus in CIM and State in Salesforce Consumer Goods Cloud)
- Physically deleting the product is out of scope (to comply with TPM best practices)
- Creation of new accounts
- Updating existing accounts
- Creation of account hierarchies
- Updating account hierarchies
- Primary identifiers will be linked with the products and accounts in Salesforce Consumer Goods Cloud to handle the correlation of products and accounts between SAP S/4 HANA and Salesforce Consumer Goods Cloud.
Technical considerations
- Enable the creation of a universal ID in Salesforce Consumer Goods Cloud that allows you to retrieve / create IDs when the product and account is created or updated
- Use CIM as the canonical model
- Build using top applications, inclusive of Salesforce products, but should be built to work with other endpoints as well. For this solution, leverage the following applications:
- Salesforce Consumer Goods Cloud and SAP S/4HANA
End-to-end scenarios
- Product(s) created in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud.
- Product Hierarchy reflected in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud.
- Account(s) created in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud.
- Product(s) updated in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud.
- Account(s) updated in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud
- Account Hierarchy reflected in SAP S/4HANA are reflected in Salesforce Consumer Goods Cloud.
Solution definition
Goal
Product synchronisation to Salesforce Consumer Goods Cloud.
Main success scenario
- Receive a new or updated product from SAP S/4 HANA.
- For the first product job run/ schedule, the products will be filtered out from SAP S/4HANA by their level. Hence the first set of products will be Category, then Sub-Category, Brand, Flavor and Packaging. This ensures that the hierarchy is correctly built in Salesforce Consumer Goods Cloud. Then the products will be pulled from SAP S/4 HANA.
- Repeat the steps 4-6 for every product level.
- Attempt to match the input to an existing product in Salesforce Consumer Goods Cloud.
- If a match is found, update the existing entry in Salesforce Consumer Goods Cloud. If no match is found, create a new entry in Salesforce Consumer Goods Cloud.
Goal
Account synchronisation to Salesforce Consumer Goods Cloud.
Main success scenario
- Receive a new or updated account from SAP S/4HANA. Every account will contain the parent account ID until it finds the top most parent in the hierarchy.
- Attempt to match the input to an existing product in Salesforce Consumer Goods Cloud.
- If a match is found, update the existing entry in Salesforce Consumer Goods Cloud. If no match is found, create a new entry in Salesforce Consumer Goods Cloud.
Assumptions and constraints
The following will be used to guide or constrain the solution design at a high level:
- The Cloud Information Model will be used as the canonical model for all business types; see the CIM usage guidelines in that asset.
- Universal identifiers will be maintained in Salesforce Consumer Goods Cloud. Wherever possible, these will be assigned as external identifiers in target systems.
- References to the universal IDs will be reflected in Salesforce Consumer Goods Cloud using ExternalIDs to avoid conflicts with the usage of other external identifiers.
High-level architecture
Activity diagram
The activity diagrams below illustrates the sequence of processing product and account sync to Salesforce Consumer Goods Cloud from SAP S/4HANA.
Processing logic
The primary handling and orchestration of products will be implemented in the Products Process API. This process can be described as follows:
- A product has five attributes - Category, Sub-Category, Brand, Flavor, Packaging that represent the product hierarchy where each attribute is a type of product.
- All the levels in the product hierarchy need to be synchronised from SAP S/4 HANA to Consumer Goods before the actual product.
- The bulk data upload to Consumer Goods Cloud will be implemented using a batch scope where each of the steps from Step 4 - Step 6 will happen in parallel for all the products.
- SAP S/4HANA System API will determine the level of the product based on the availability of the five attributes.
- Find a matching product entry in Salesforce Consumer Goods Cloud. The lookup will be done by attempting to match on the following criteria, returning once a match has been found:
- External Identifier (of source system)
- If a single match is found, apply the incoming updates to the existing product in Salesforce Consumer Goods Cloud
- If no match was found:
- Create a product entry in Salesforce Consumer Goods Cloud
- Associate external identifier of source system with the product
- Invoke System APIs to update the downstream systems (see below)
The primary handling and orchestration of customers will be implemented in the Customers Process API. This process can be described as follows:
- A Customer has an attribute to identify the parent- parentId that represents the hierarchy where each attribute is a type of customer.
- All the levels in the customer hierarchy need to be synchronised from SAP S/4 HANA to Consumer Goods before the actual product.
- The bulk data upload to Consumer Goods Cloud will be implemented using a batch scope where each of the steps from Step 4 - Step 6 will happen in parallel for all the customers.
- SAP S/4HANA Customer System API will determine the level of the customer based on the availability of the parentId attribute.
- Find a matching customer entry in Salesforce Consumer Goods Cloud. The lookup will be done by attempting to match on the following criteria, returning once a match has been found:
- External Identifier (of source system)
- If a single match is found, apply the incoming updates to the existing customer in Salesforce Consumer Goods Cloud
- If no match was found:
- Create a customer entry in Salesforce Consumer Goods Cloud
- Associate external identifier of source system with the product
- Invoke System APIs to update the downstream systems (see below)
Successful outcome
After successfully completing the update processing for all target systems, the following conditions will be met:
- Salesforce Consumer Goods Cloud holds a record of the product and customer
- All target systems will hold at least some minimal representation of the same
- The entity created/updated in each system will reference the universal identifier from Salesforce Consumer Goods Cloud
- Salesforce Consumer Goods Cloud holds all external identifiers associated with the product and customer
- A complete view of the product and customer can be constructed by retrieving the universal copy from Salesforce Consumer Goods Cloud
Workflow
The use case is triggered when
- A product and its associated hierarchy is created in SAP S/4 HANA
- An account/organization and its associated hierarchy is created is created in SAP S/4 HANA
The Products Process API invokes the SAP S/4HANA Products System API on a schedule to capture the new and updated products
- The Customers Process API invokes the SAP S/4HANA Customer System API on a schedule to capture the new and updated organization customers
- The Salesforce Consumer Goods Cloud System API creates or updates the products and accounts in Salesforce Consumer Goods Cloud.
Systems involved
- Salesforce Consumer Goods Cloud
- SAP S/4HANA
Setup instructions
Saleforce Consumer Goods Cloud configuration
Follow the setup instructions in the Prerequisites tab of the Salesforce Consumer Goods Cloud System API.
Before you begin
The Getting Started with MuleSoft Accelerators guide provides general information on getting started with the accelerator components. This includes instructions on setting up your local workstation for configuring and deploying the applications. |
Downloadable assets
Accelerator System APIs
- RCG SAP S/4HANA Products System API | API Specification | Implementation Template
- RCG Salesforce Consumer Goods Cloud System API | API Specification | Implementation Template
- RCG SAP S/4HANA Customers System API | API Specification | Implementation Template
- RCG Salsify Products System API | API Specification | Implementation Template
Accelerator Process APIs
RCG Products Process API | API Specification | Implementation Template
RCG Customers Process API | API Specification | Implementation Template
Accelerator Listeners
- RCG SAP Event Listener | Implementation Template
- RCG Salsify Channel Listener | Implementation Template